Returning back to normal power mode only after completing a transition to a power saving mode by an image forming apparatus

ABSTRACT

It is an object to enable a request received from an outside to be automatically processed immediately before shifting to a power saving state such as a suspend state. On the way of a shift from a normal state to the suspend state and in a state where the shift cannot be interrupted, when a predetermined request such as a print job is received from an external interface, an MFP reserves a return to the normal state by turning on a wake-up reservation flag and continues a suspend process. When shifting to the suspend state, if the wake-up reservation flag is ON, a power supply control unit performs a return (resume) to the normal state even if no wake-up factor occurs.

BACKGROUND OF THE INVENTION

Field of the Invention

The present invention relates to control of an information processingapparatus such as an image forming apparatus or the like which canswitch a plurality of electric power states and can operate.

Description of the Related Art

In information processing apparatuses such as an image forming apparatusand the like in recent years, there is an apparatus having a functioncalled “suspend” in which the operation of a program being executed orthe like is set into a rest state so that electric power consumptionwhen the apparatus is not used is reduced and that the apparatus can bereturned in an operating state similar to a current operating state.There is also an apparatus having a function called “resume” in whichthe apparatus is returned to a state immediately before the operation isrested by a user's operation or a request such as a print job or thelike from a network.

According to the foregoing suspend function, in the state immediatelybefore the operation is rested, a device driver of a kernel stores astate of the device into a memory and each service is interrupted.According to the resume function, by returning the state of the devicestored in the memory before, states of almost all devices can bereturned to the states immediately before and the apparatus can bereturned the state immediately before the operation is rested.

According to Japanese Patent Application Laid-Open No. 2000-284974, in adevice such as a network or the like which has to be operated even insuspend, an interruption which was being processed by software isswitched to hardware which operates in suspend, thereby enabling aservice to be continued even in suspend.

According to the image forming apparatus in the related art, forexample, a print job which is transmitted from an external host PC(personal computer) through a network can be recognized as a print jobfor the first time by processing a plurality of network packets(hereinbelow, referred to as packets) by software. However, in the imageforming apparatus, if the packet is received immediately before theapparatus enters a suspend mode, there is a case where the apparatusenters the suspend mode before the packet is analyzed and recognized asa print job. In such a case, if the remaining packets are transmittedfrom the host PC, the image forming apparatus receives them, is returnedfrom the suspend mode, and can restart an analyzing process of thepacket.

However, in the case of a very small print job, there is a possibilitythat the packet transmission from the host PC has already been finished.In such a case, it is not guaranteed that a new packet is transmittedfrom the host PC. Therefore, in the image forming apparatus, there is apossibility that the suspend mode is maintained and the analyzingprocess itself of the packet is stopped. In this case, there is apossibility of occurrence of such a phenomenon that in spite of a factthat the transmission of the print job from the host PC has already beencompleted, the image forming apparatus enters the suspend state whileholding the packet and a printing is not performed at all. In this case,although the printing of the job can be performed by returning theapparatus by directly operating the apparatus by the user or the like,it is troublesome for the user. A case where since the printing is notperformed, the user transmits the job again is considered. However, inthis case, the printing of both of the job which had been transmittedbefore and the job which was transmitted again is performed irrespectiveof a user's intention.

The invention is made to solve the foregoing problem. It is an aspect ofthe invention to provide such a mechanism that a request received froman outside immediately before an apparatus is shifted to a power savingstate such as a suspend state or the like can be automatically processedwithout causing a troublesomeness to the user.

SUMMARY OF THE INVENTION

According to an aspect of the invention, there is provided aninformation processing apparatus which is shifted to a first power stateand a second power state in which electric power consumption is smallerthan that in the first power state, comprising: a shift unit configuredto shift the information processing apparatus from the first power stateto the second power state in the case where a shift event for shiftingto the second power state occurs in the first power state; a return unitconfigured to return the information processing apparatus from thesecond power state to the first power state in the case where a returnevent for returning to the first power state occurs in the second powerstate; and a reservation unit configured to make a reservation forreturning the information processing apparatus from the second powerstate to the first power state in the case where the return event occurswhile the information processing apparatus is being shifted from thefirst power state to the second power state by the shift unit, whereinin the case where the return event occurs while the informationprocessing apparatus is being shifted from the first power state to thesecond power state by the shift unit, the shift unit shifts theinformation processing apparatus to the second power state, and in thecase where the reservation is made by the reservation unit, the returnunit returns the information processing apparatus from the second powerstate to the first power state without the occurrence of the returnevent.

According to the invention, the request received from the outsideimmediately before the apparatus is shifted to the power saving statesuch as a suspend state or the like can be automatically processedwithout causing a troublesomeness to the user.

Further features of the present invention will become apparent from thefollowing description of exemplary embodiments with reference to theattached drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram illustrating an example of a schematic constructionof an image forming apparatus showing an information processingapparatus of the invention.

FIG. 2 is a diagram illustrating an example of a schematic constructionof an MFP (multifunction peripheral) controller unit.

FIG. 3 is a flowchart illustrating an example of a suspend process.

FIG. 4 is a flowchart illustrating an example of the operation in asuspend state.

FIG. 5 is a diagram illustrating in detail an example of peripheries ofa power supply control unit and a CPU (central processing unit).

FIG. 6 is a diagram illustrating an example of a state of each devicefor every elapse of time.

DESCRIPTION OF THE EMBODIMENTS

An embodiment of the invention will be described in detail hereinbelowwith reference to the drawings.

FIG. 1 is a diagram illustrating an example of a schematic constructionof an image forming apparatus showing an embodiment of an informationprocessing apparatus of the invention.

In FIG. 1, an image forming apparatus 100 (hereinbelow, referred to asMFP) has a hybrid function such as copy function, printer function,scanner function, and the like.

An MFP controller unit 12 controls the whole MFP. A scanner unit 11optically reads an image from an original and converts into a digitalimage. A printer unit 13 executes an image forming process in accordancewith, for example, an electro photographic method. A recording method ofthe printer unit 13 is not limited to the electro photographic method solong as the image forming process can be executed to a sheet-likerecording medium (for example, recording paper) but another recordingmethod such as ink jet method, thermal transfer method, or the like maybe used.

A power supply unit 10 supplies an electric power supplied from an ACpower source to each unit of the MFP 100. An operation unit 15 is a userinterface for performing the operation of the MFP 100. A power supplyswitch unit 14 is a switch which can perform an ON/OFF operation of apower source by the user and switches a power supply state of the MFP100.

FIG. 2 is a diagram illustrating an example of a schematic constructionof the MFP controller unit 12. A description of the component elementsdesignated by the reference numerals already mentioned above is omittedhereinbelow.

In FIG. 2, a power supply control unit 23 has such a function that whenit is detected that the power supply switch unit 14 has been operated ora power saving button 29 arranged on the operation unit 15 has beenoperated, a CPU 27 is notified of it as an interruption. The powersupply control unit 23 controls in such a manner that when the MFP isshifted to a power saving mode, a supply of a power source to a powersupply system B 21, which will be described hereinafter, is shut offand, when the MFP is returned from the power saving mode, a power sourceis supplied to the power supply system B. An FET (field-effecttransistor) 20 is constructed by, for example, an field effecttransistor and is a switch for turning on or off the power supply to thepower supply system B 21 in response to a signal from the power supplycontrol unit 23.

The CPU 27 is a control unit for controlling the whole MFP 100. A memoryunit 25 is a volatile memory such as a DDR-SDRAM (double datarate-synchronous dynamic random access memory) or the like. An imageprocessing unit 28 is a control unit for executing such a process thatdata from the scanner unit 11 is compressed, image data processed by theCPU 27 is output to the printer unit 13, or the like. An HDD (hard diskdrive) unit 26 is an external storage device and is, for example, an(hard disk drive), an SSD (solid state drive), or the like.

The operation unit 15 has the power saving button 29, an input device(LCD (liquid crystal display) panel/numerical keypad) 30, and the likeand can be operated by the user. A network unit 24 is one of externalinterfaces (hereinbelow, referred to as external I/F (interface)) of theMFP 100 and can receive a print request from an external PC (personalcomputer) or the like (not shown) through a network. A USB (universalserial bus) unit 31 is also one of the external I/F of the MFP 100 andcan receive the print request from the external PC or the like (notshown) through a USB cable.

Subsequently, a power supply system of the MFP controller unit 12 willbe described. The embodiment shows a case where a suspend method wherebydata is held in a memory as a state where electric power consumption issmaller than that in a normal state and an activation time is a highspeed time is applied as a power saving function. However, anothermethod such as a hibernation method or the like may be used as a powersaving function.

As mentioned above, if a predetermined power saving shift factor occurs,the MFP 100 stores a state (first state) of the MFP 100 at the time whenthe occurrence of the power saving shift factor is detected into thememory unit 25 and shifts to a second state. The second state denotes astate of the MFP 100 where if a predetermined wake-up factor occurs, theMFP can be returned to the first state. In the embodiment, it is assumedthat the first state is a normal state and the second state is a suspendstate. The suspend state corresponds to a power saving state. Asmentioned above, an electric power consumption amount of the MFP 100 inthe suspend state is smaller than that of the MFP 100 in the normalstate.

The case where the predetermined power saving shift factor occurredcorresponds to, for example, a case where an OFF operation of the powersupply switch unit 14 or a depression operation of the power savingbutton 29 has been detected, a case where there is no input from theinput device 30 for a predetermined time, or the like. The case wherethe predetermined wake-up factor occurred corresponds to, for example, acase where an event such as case where an ON operation of the powersupply switch unit 14 or the depression operation of the power savingbutton 29 has been detected, case where a predetermined request such asa job or the like has been input from the network unit 24 or the USBunit 31, or the like is detected.

The power supply system B 21 is a power supply system for supplying apower source to the CPU 27, image processing unit 28, HDD unit 26,operation unit 15 (other than the power saving button 29), scanner unit11, printer unit 13, and the like. Control of shut-off/supply of thepower source of the power supply system B 21 is realized by controllingthe FET 20 by a control signal which is output from the power supplycontrol unit 23.

A power supply system A 22 is a power supply system for supplying apower source to the power supply control unit 23, network unit 24,memory unit 25, USB unit 31, power saving button 29, and the like. Inboth of the first state and the second state, the power source issupplied to the power supply system A 22 from the power supply unit 10.The MFP 100 switches a plurality of power states, that is, switches atleast the normal state and the suspend state where the electric powerconsumption is smaller than that in the normal state and can operate.That is, even in the suspend state, the network unit 24 and the USB unit31 can communicate with the outside.

A sequence of the suspend process will be described hereinbelow withreference to FIGS. 3 and 6.

FIG. 3 is a flowchart illustrating an example of the suspend process inthe embodiment. The suspend process is realized by a method whereby theCPU 27 reads out a program recorded in the HDD unit 26 or the like andexecutes.

FIG. 6 is a diagram illustrating an example of a state of each devicefor every elapse of time in the embodiment.

If there is no input from the input device 30 for a predetermined timeor if the occurrence of such a predetermined power saving shift factorthat the power supply switch unit 14 has been operated or the powersaving button 29 has been depressed or the like is detected, the CPU 27executes the suspend process (S300) shown in FIG. 3.

In S301, the CPU 27 executes a termination process of external devicessuch as printer unit 13, scanner unit 11, and the like. The externaldevices are devices connected to the external I/F. In FIGS. 1 and 2, theprinter unit 13, scanner unit 11, and the like correspond to them. Amongthe external devices, there is also a device in which it takes a time toterminate. Therefore, while confirming whether or not a factor to cancelthe suspend has occurred (S302), the CPU 27 continues the terminationprocess of the external devices until the termination process of theexternal devices is completed (S301, S303) (state 65 in FIG. 6;termination process to external devices). In addition to a wake-upfactor, which will be described hereinafter, a cancel factor designatedby the CPU 27 as shown below is included in the cancel factor in S302.The cancel factor designated by the CPU 27 denotes such a factor that ifthe CPU 27 does not continue the process, an obstacle will occur.Therefore, when such a factor is detected, the CPU 27 determines thatthe cancel factor has occurred.

If it is determined that the cancel factor such as a job or the like hasoccurred from the network unit 24 during the termination process of theexternal device (in the case of YES in S302), the CPU 27 determines thatthe shift to the suspend is cancelled. Since the termination process hasalready been performed to several devices, a return process of alldevices and a return completion are confirmed in S310 to S311, andthereafter, the CPU 27 executes, for example, the job serving as acancel factor in S312 and cancels the suspend operation. Although notshown, if the suspend operation was cancelled, after completion of theexecution of, for example, the job serving as a cancel factor, the CPU27 again executes the suspend process (S300).

If it is determined that the termination process to the external deviceshas been completed without occurrence of the cancel factor (in the caseof NO in S302 and YES in S303), the CPU 27 controls so as not to performthe suspend cancel and advances to S304.

In S304, the CPU 27 clears a wake-up reservation flag 61 stored in thepower supply control unit 23 to “OFF” (event 71 in FIG. 6) andinitializes a state to hold the occurrence of the wake-up factor for aperiod of time until the MFP will enter the suspend in future.

Subsequently, in S305, the CPU 27 executes the termination process tointernal devices. In the example of FIGS. 1 and 2, the network unit 24,USB unit 31, HDD unit 26, image processing unit 28, and the likecorrespond to the internal devices. In the termination process to theinternal devices, after the current state was held in the memory unit 25with respect to each of the internal devices, the operation mode ischanged from a mode under control management of the CPU 27 in which theoperation is stopped in the suspend state so that the MFP operatesindependently even in suspend.

In the termination process to the internal devices, there is also such aprocess that it takes a time. Therefore, while confirming whether or notthe wake-up factor has occurred (S306), the CPU 27 continues thetermination process to the internal devices until the terminationprocess to the internal devices is completed (S305, S308) (state 66 inFIG. 6; termination process to internal devices).

The internal devices are hardware connected to the CPU 27 through thebus as mentioned above and are devices arranged onto the same main boardas that of the CPU 27. Unlike the external devices, since the internaldevices cannot be accessed at the time of termination, it is necessaryto strictly decide terminating order. In order to perform the stableoperation as well, it is better that the halfway interruption as in theexternal devices is not performed. Therefore, until the terminationprocess to the internal devices (S305) is started, if the suspendprocess can be interrupted (can be cancelled), when the terminationprocess to the internal devices (S305) is started, the suspend processcannot be interrupted (cannot be cancelled).

Therefore, in the MFP 100 in the embodiment, if it is determined thatthe wake-up factor has occurred during the termination of the internaldevice (in the case of YES in S306), the wake-up request is reserved tothe power supply control unit 23 (event 71 in FIG. 6) (S307) and thesuspend process is continued. That is, if the event serving as a wake-upfactor has occurred in a state where the halfway interruption of thesuspend process cannot be performed, a resume process (return) isreserved.

It is assumed that as for the suspend process which is executed by theCPU 27, when the termination process to the internal devices (S305) isstarted, such a fact is notified to a protocol stack 57, a socket I/F58, and an application 59 shown in FIG. 5, which will be describedhereinafter. By this notification, during the termination process to theinternal devices, an observation of the occurrence of the wake-up factorand a reservation of the return are performed in the protocol stack 57,socket I/F 58, and application 59. Even in the network unit 24, duringthe termination process to the internal devices, the observation of theoccurrence of the wake-up factor and the reservation of the return areperformed.

In the protocol stack 57, socket I/F 58, or application 59, if it isdecided that the wake-up factor has occurred, a wake-up reservation flag61 in the power supply control unit 23 is turned “ON” from the CPU 27.If it is decided that the wake-up factor has occurred in the networkunit 24, the wake-up reservation flag 61 in the power supply controlunit 23 is turned “ON” from the network unit 24 without intervention ofthe CPU 27. It is assumed that if it is determined that a predeterminedrequest (for example, print request or response request) has beenreceived from the network unit 24, the network unit 24, protocol stack57, socket I/F 58, or application 59 determines that the wake-up factorhas occurred, and processes such a request.

Further, even when there is an operation of the input device 30 of theoperation unit 15 or there is a designated time alarm from an RTC(real-time clock) or the like as a clock unit (not shown), theoccurrence of the wake-up factor is decided. The wake-up reservationflag 61 in the power supply control unit 23 is turned “ON” from the CPU27. The power supply control unit 23 holds the wake-up reservation flag61 even after the shift to the suspend. When the wake-up reservationflag 61 is turned “ON”, the power supply control unit 23 enters awake-up reservation state (state 63 in FIG. 6).

If it is determined that the termination process to the internal deviceshas been completed (in the case of YES in S308), the CPU 27 sends asuspend shift instruction to the power supply control unit 23 (event 73)and turns OFF the FET 20 through the power supply control unit 23. Thus,a power source of the power supply system B 21 is turned off and the MFP100 is shifted to the suspend state.

Specifically speaking, the power supply control unit 23 which receivedthe suspend shift instruction (event 73) shifts the memory unit 25 to aself refresh standby state (state 62 in FIG. 6) and shifts the networkunit 24 to a wake-up condition observation state (state 70 in FIG. 6).Further, the power supply control unit 23 turns off the power supplysystem B 21, so that the CPU 27 is set to an OFF state (state 67 in FIG.6). After that, the power supply control unit 23 enters the suspendstate (state 64 in FIG. 6). This suspend state (state 64) is a stateequivalent to the suspend state of the whole MFP controller unit 12.

Although the embodiment has been described with respect to the suspendmethod in which a value is held in the memory unit 25 itself, an effectsimilar to that in the suspend method can be obtained even in thehibernation method using the HDD unit 26 or a method in which an MRAM(magnetic random access memory) is used as a memory unit 25.

Only the devices included in the power supply system A 22 operate insuspend. In suspend, the network unit 24 observes whether or not thereceived packet is a packet which has to be returned from suspend (state70; in wake-up condition observation). While observing the resume start,the power supply control unit 23 continues the suspend state. The powersupply control unit 23 may be either a unit containing a CPU therein ora unit constructed by a dedicated hardware logic.

The operation in the suspend state (state 64, in suspend) of the powersupply control unit 23 will be described with reference to FIG. 4.

FIG. 4 is a flowchart illustrating an example of the operation in thesuspend state of the power supply control unit 23 in the embodiment. Aprocess shown in FIG. 4 is realized either by a method whereby the CPU(not shown) of the power supply control unit 23 reads out a programrecorded in a ROM or the like (not shown) and executes or by a dedicatedhardware logic.

The power supply control unit 23 executes a process shown in S400 insuspend in which the power supply system B is OFF. In the process (S400)in suspend, the power supply control unit 23 observes the occurrence ofany one of events shown in following S401 to S406.

In S401, the power supply control unit 23 confirms the presence orabsence of the reservation of the wake-up factor (reservation ofreturn). In the confirmation of the presence or absence of thereservation of the wake-up factor, when the wake-up reservation flag 61stored in the power supply control unit 23 is “ON”, it is determinedthat there is a reservation of the wake-up factor. The wake-upreservation flag 61 becomes a flag which is made operative as a triggerto start the resume immediately after the MFP entered the suspend state.As mentioned above, “ON” of the wake-up reservation flag 61 is set in astate where the interruption cannot be performed in the suspend process.

In S402, the power supply control unit 23 observes whether or not aneffective resume start instruction such as job, inquiry, or the like hasbeen received from the network unit 24 (observes whether or not thewake-up condition in the state 70 in FIG. 6 is true). In S403, the powersupply control unit 23 observes whether or not such an effective resumestart instruction that there is an incoming call from a facsimile unit(not shown) or the like has been received. In S404, the power supplycontrol unit 23 observes whether or not there is a wake-up time alarmfrom the RTC (not shown). In S405, the power supply control unit 23observes whether or not such an effective resume start instruction thata job was received from the USB unit 31 or the like has been received.In S406, the power supply control unit 23 observes whether or not thepower saving button 29 or the power supply switch unit 14 has beendepressed.

The power supply control unit 23 continues the foregoing observationuntil the occurrence of any one of the events shown in S401 to S406.When any one of the events occurs (in the case of YES in any one of S401to S406), S407 follows.

In S407, the power supply control unit 23 executes a process forguaranteeing the minimum suspend time (process for guaranteeing theminimum time in suspend in order to avoid a reset inconvenience). InS408, the resume is started.

That is, in S408, the power supply control unit 23 turns on the FET 20,starts the current supply to the power supply system B 21, and cancelsthe reset to the CPU 27. After that, the CPU 27 sets the interruptionstate of each device held in the memory unit 25 at the time of suspendalready described above into each device, thereby shifting to a statebefore the suspend is performed (state 68; resume process). For example,if the MFP is shifted to the suspend state in a state where thereception of the print job from the network has been completed, the MFPis shifted to the state before the suspend is performed and the printjob which was received and held before shifting to the suspend state isexecuted. If the MFP is shifted to the suspend state in a state wherethe reception of the print job from the network is not completed, theMFP is shifted to the state before the suspend is performed, the printjob which is transmitted again is received, and the print job isexecuted. If the retransmission of the print job has been finished dueto a time-out or the like, the print job is lost.

At this time, the CPU 27 takes back control rights of the externalinterfaces such as network unit 24, USB unit 31, and the like to the CPU27 (state 74; network unit 24 is in standby). That is, the MFP isreturned to the normal state. Thus, the CPU 27 takes back all of thecontrol rights of the MFP controller unit 12.

As mentioned above, if the event to be interrupted (wake-up factor)occurred on the way of entering the suspend (on the way of shift), theMFP 100 in the embodiment holds the flag state into the power supplycontrol unit 23, thereby reserving the return, and enters the suspend asit is. By the return reservation, the MFP 100 automatically executes theresume operation after it entered the suspend, and can be returned tothe normal state.

Subsequently, a judgment at the time of setting the wake-up reservationflag 61 to “ON” will be described.

FIG. 5 is a diagram illustrating in detail an example of peripheries ofthe power supply control unit 23 and the CPU 27.

An analog electric signal transmitted from an external PC (not shown) isconverted into digital data by a PHY (physical layer) 53. On the basisof the converted digital data, an LANC (local area network controller)54 forms a data packet. The formed data packet is stored through aninternal BUF (buffer) 55 into a BUF 56 which is provided in the memoryunit 25 and is constructed by, for example, a descriptor table.

For example, in the case of communication through Ethernet (registeredtrademark), the reception data is data of a unit called “Ethernet(registered trademark) frame”. The reception data is analyzed by thesoftware (protocol stack 57) called “protocol stack” on the basis of apredetermined communication procedure and is transmitted to theapplication 59 through the socket I/F 58 of, for example, TCP/IP(Transmission Control Protocol/Internet Protocol). The protocol stack 57is a software module in which a series of communication protocol groupsto realize computer communication has been installed. The protocol stack57 has a communication processing function to process the reception dataevery protocol.

The application 59 is software for designating a socket, opening a line,and transmitting and receiving data to/from the socket I/F 58. Thesocket I/F 58 is a software module for transmitting and receiving databy using the socket. The socket I/F 58 mediates the data transmissionand reception between the protocol stack 57 and the application 59. Theapplication 59 analyzes the contents of the data received through thesocket I/F 58 and discriminates whether or not its packet should be, forexample, the wake-up request such as a job or the like.

The network is an interface which is being expanded and is notified tothe application through buffers on a plurality of hardware as mentionedabove and a buffer (its substance exists in the memory unit 25) formedby software.

The print job transmission by the protocol of TCP/IP will now bedescribed as an example. As for such a small job that can be enclosed ina window size (size of data which can be received in a lump) of theprotocol stack of TCP/IP, a transfer of TCP/IP is perfectly completed ina state where such a job exists in the protocol stack 57 (its substanceexists in the memory unit 25). Therefore, a host PC (not shown) of atransmitting source of the print job regards the end of transmission atthis point of time and enters a “print completion” state.

However, the application 59 merely issues a reception request to thesocket I/F 58 and in the state where the data exists in the protocolstack 57 as mentioned above, the application 59 cannot detect thereception itself of the print job. That is, in such a state, the event(cancel factor) of S302 in FIG. 3 does not occur in the application 59.

When the termination process to the external devices is finished (YES inS303) in such a state, the MFP enters the termination process tointernal devices (S305), so that the MFP 100 enters a state where itcannot be returned on the way of the operation. That is, even if the jobexists in the memory, the MFP 100 is shifted to the suspend state.

In the state where the MFP 100 is shifted to the suspend state asmentioned above, if a network packet serving as a wake-up factor istransmitted from the host PC to the MFP 100, in the MFP 100, thecondition of S402 in FIG. 4 is accomplished and the resume operation isstarted. Thus, in the MFP 100, the job which was suspended in a statewhere it is held in the memory is processed.

However, since a discrimination about whether or not such a packet istransmitted depends on the specifications of the transmitting sourcelocating on the destination side of the external I/F, it is notguaranteed. If such a packet is not transmitted, there is a possibilitythat the foregoing job is not processed while keeping the suspend state.

For example, in the case of a job which is completed by one packet ofEthernet (registered trademark), it is not guaranteed that the nextpacket is transmitted, and a case where the MFP enters the suspend in astate where the job packet exists in the buffer 55 is also considered.In this case, according to the software of the CPU 27, even if anymethod is used, such a job cannot be detected. Therefore, in theembodiment, a reservation of return using the wake-up reservation flag61 is made.

As mentioned above, the ON operation of the wake-up reservation flag 61is effective on the way of the suspend process, that is, untilcompletion of the suspend from the timing when the suspend cannot becancelled. In other words, in the flowchart of FIG. 3, the ON operationof the wake-up reservation flag 61 is effective only for a period oftime (interval of the state 66) between S305 to end.

The ON operation of the wake-up reservation flag 61 will be describedhereinbelow.

(A) The ON operation of the wake-up reservation flag 61 by the networkunit 24 will be described. In order to save a possibility that thepackets are accumulated in the buffer 55, the network unit 24 observesthe packet serving as a wake-up factor. If it is determined that thewake-up factor has occurred, an interruption line 60 is asserted,thereby setting the wake-up reservation flag 61 into the power supplycontrol unit 23. In this case, the event 71 is notified to the powersupply control unit 23 by the interruption line 60 without interventionof the CPU 27. Thus, in the power supply control unit 23, the wake-upreservation flag is turned “ON” and the MFP is in standby and enters thewake-up reservation state. If all packets are asserted as targets, awake-up reservation is also made in a broadcast, an ARP (AddressResolution Protocol) packet, or the like. Therefore, in the network unit24, a packet such as job, SNMP (Simple Network Management Protocol), orthe like which needs a response instead of the broadcast, ARP packet, orthe like is discriminated and the interruption line 60 is asserted, sothat the more accurate wake-up reservation can be made.

(B) The ON operation of the wake-up reservation flag 61 by the protocolstack 57 will be described. Generally, the protocol stack 57 exists in alibrary in the kernel. The protocol stack 57 is constructed byconnecting protocols of the network such as IP, TCP, and the like in astack manner and each protocol has an independent temporary buffer.Information which can be discriminated differs in accordance with alayer of the stack. As a most general stack, there is a TCP port numberof a TCP protocol stack. It is such a technique that communication canbe multiplexed by such a sparse coupling promise that both of thetransmitter and receiver use an arbitrary number. There is such aregulation that an RAW port and an LPR (Line PRinter daemon protocol)port which are used to print are 9100 and 515 and the like. Althoughthere is such a process that a port number is discriminated in theprotocol stack and is allocated to an arbitrary port, and at this pointof time, it is possible to determine that the data is probably the printjob. By the reception from the outside, the kernel of the CPU 27executes a receiving process. In this protocol stack, the CPU 27 issuesan event 72 and notifies the power supply control unit 23 of it. Thus,the power supply control unit 23 turns on the wake-up reservation flagand the MFP is in standby and enters the wake-up reservation state. Inthis manner, the protocol stack 57 issues a command of the CPU 27 to setthe wake-up reservation flag 61 in accordance with the port number, sothat the wake-up reservation can be made by the necessary datareception.

(C) The ON operation of the wake-up reservation flag 61 by the socketI/F 58 will be described. The socket I/F 58 is a mechanism to multiplexthe data transmission and reception of the kernel. There is a case wherethis layer has a buffer by a data multiplexing method of a sparsecoupling type similar to that of the above-described port. There is alsoa case where by changing a virtual memory mapping, a pointer is handed.The application 59 receives data of an arbitrary port of, for example,TCP through the socket of the kernel. As for the socket, a use field isalmost determined every socket. Therefore, at a point of time when thedata can be obtained from the socket such as a print use or the like,the socket I/F 58 issues the command of the CPU 27 so as to set thewake-up reservation flag 61, so that the wake-up reservation can be madeby the necessary data reception.

Even in the application 59, it is also possible to construct in such amanner that when it is determined that the wake-up factor has occurred,the command of the CPU 27 is issued so as to set the wake-up reservationflag 61 at this point of time, and the wake-up reservation is made.

Although the construction using all of the foregoing (A), (B), and (C)has been shown in the above description, all of them may be used or anyof them may be selectively used.

In each layer of the foregoing (A), (B), and (C), a time which isrequired until the data is transferred to the application 59 differs,and a size of buffer which can temporarily hold the data also differs.In each layer, an analyzing method of the packet data differs, and sucha difference exerts an influence on the reliability of judgment aboutthe wake-up factor. Since those judgments are general in the network,their detailed description is omitted. However, in a system in which aCPU is provided in the network unit 24 and a network response in suspendis performed, by using the judgment of (A), a maximum advantage of thepower saving is obtained.

In the foregoing embodiment, the power saving mode by the suspend forturning off the CPU 27 has been shown. However, in sleep control of WaitFor Interrupt type for shifting the CPU 27 to an interrupt standby state(dose mode) or the like, by using the judgment of (B), a system of thehighest reliability can be constructed. In this manner, it is sufficientto select one of (A), (B), and (C) in accordance with the construction,necessary reliability, and electric power.

There is also a case where if the application 59 does not receive thereception data of a certain amount such as PDL data or the like, the jobcannot be discriminated. In such a case, at a point of time when theapplication 59 starts the data reception from the socket I/F 58, thesocket I/F 58 issues the command of the CPU 27 to set the wake-upreservation flag 61, so that the wake-up reservation can be made by thenecessary data reception.

As described above, in the MFP 100 of the embodiment, such an obstaclethat the MFP enters the suspend on the way of process of the inquiry,job, or the like from the outside occurring just when the MFP enters thesuspend and does not wake-up as it is can be avoided. In the embodiment,in such a case, the MFP enters the suspend as a wake-up reservationstate 63 and the resume process (state 68 in FIG. 6) is automaticallystarted from the state in suspend and waiting for certain period of time(state 64 in FIG. 6).

As an example of the return reservation based on the reception in theexternal interface, the return reservation in the case where the data isreceived by the network unit 24 has been described above. However, it isalso possible to construct in such a manner that data is received byanother external interface and the return reservation is made. Forexample, it is also possible to construct in such a manner that data isreceived by the USB unit 31 and the return reservation is made.

The USB unit 31 is also a typical block device. Since the USB unit 31and the CPU 27 have almost the same buffer construction as that in thecase of the network unit 24 and the CPU 27, their detailed descriptionis omitted. In the invention, the specific external interface devicesare not limited to the network unit 24, the USB unit 31, and the likebut other external interface devices may be used. For example, it isalso possible to construct in such a manner that data is received byanother external interface such as Bluetooth, infrared rays,Thunderbolt, or the like (not shown) and the return reservation is made.The invention may use another construction in which the wake-upreservation is set from hardware of the external interface or a state ofthe buffer for processing the data received from the external interfaceis observed in a software manner and the wake-up reservation is made.

In the foregoing embodiment, the construction in which the wake-upreservation flag 61 is held in the power supply control unit 23 has beenshown. However, the wake-up reservation flag 61 may be held out of thepower supply control unit 23. The wake-up reservation flag 61 may bestored anywhere so long as it is a storage area which can be read out bythe power supply control unit 23 in the suspend state.

Although the construction in which the return reservation is made byusing the wake-up reservation flag 61 has been shown, the returnreservation may be made by another method. For example, if the returnfactor occurred in a state where the suspend process cannot beinterrupted, a sleep minimum time may be set into the real-time clock atthe timing when the process to internal devices is terminated or thelike and the power supply system B may be turned off.

As shown above, the MFP 100 is constructed in such a manner that when anevent is received from the external interface just when the MFP entersthe suspend mode, after the MFP entered the suspend mode once, the MFPis automatically activated so as to wake-up, and after the MFP wasautomatically activated from the suspend, the event is continuouslyprocessed. By this construction, the occurrence of such a phenomenonthat while the event is received from the external interface just whenthe MFP enters the suspend mode, the process itself of such an event isheld in suspend can be suppressed. Thus, a request received from theoutside immediately before the MFP is shifted to the power saving statesuch as a suspend state or the like can be automatically processedwithout annoying the user.

Further, in the image forming apparatus in the related art, immediatelybefore the MFP enters the suspend mode, even in the case where there isa user operation or there is a designated time alarm or the like fromthe RTC, the MFP is shifted to the suspend mode as it is irrespective ofthe user's intention. However, in the MFP of the embodiment, even ifthere is a key operation of the operation unit 15 or there is adesignated time alarm or the like from the RTC (not shown) just when theMFP enters the suspend mode, after the MFP entered the suspend modeonce, the MFP is automatically activated so as to wake-up. By thisconstruction, the occurrence of such a phenomenon that the MFP isshifted to the suspend mode irrespective of the user's intention can besuppressed.

Although the image forming apparatus (MFP) has been described above asan example in the embodiment, the invention can be applied to anotherapparatus so long as it is an information processing apparatus which canoperate while switching a plurality of electric power states and canreceive a job by an external interface.

The foregoing constructions of the various kinds of data and theircontents are not limited to those mentioned above but, naturally, thevarious kinds of data may have various kinds of constructions andcontents in accordance with use objects.

Although the embodiment has been shown above, the invention can be alsoembodied as, for example, a system, an apparatus, a method, a program, astorage medium, or the like. Specifically speaking, the invention can bealso applied to a system constructed by a plurality of apparatuses ormay be applied to an apparatus constructed by one equipment.

All of constructions in which the foregoing embodiments are combined arealso incorporated in the invention.

Other Embodiments

The invention is also realized by executing the following processes.That is, software (program) for realizing the functions of the foregoingembodiments is supplied to a system or apparatus through a network orvarious kinds of storage media and a computer (or a CPU, MPU, or thelike) of the system or apparatus reads out the program and executesprocesses based on the program.

The invention may be applied to a system constructed by a plurality ofapparatuses or may be applied to an apparatus constructed by oneequipment.

The invention is not limited to the foregoing embodiments but variousmodifications (including organic combinations of the embodiments) arepossible on the basis of the essence of the invention. They are notexcluded from the scope of the invention. That is, all of constructionsin which the foregoing embodiments and their modifications are combinedare also incorporated in the invention.

Embodiments of the present invention can also be realized by a computerof a system or apparatus that reads out and executes computer-executableinstructions recorded on a storage medium (e.g., non-transitorycomputer-readable storage medium) to perform the functions of one ormore of the above-described embodiment of the present invention, and bya method performed by the computer of the system or apparatus by, forexample, reading out and executing the computer-executable instructionsfrom the storage medium to perform the functions of one or more of theabove-described embodiment. The computer may comprise one or more of acentral processing unit (CPU), micro processing unit (MPU), or othercircuitry, and may include a network of separate computers or separatecomputer processors. The computer-executable instructions may beprovided to the computer, for example, from a network or the storagemedium. The storage medium may include, for example, one or more of ahard disk, a random access memory (RAM), a read only memory (ROM), astorage of distributed computing systems, an optical disk (such as acompact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™),a flash memory device, a memory card, and the like.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all such modifications and equivalent structures andfunctions.

This application claims the benefit of Japanese Patent Application No.2013-131321, filed on Jun. 24, 2013, which is hereby incorporated byreference herein in its entirety.

What is claimed is:
 1. An information processing apparatus which can beshifted between a first power state and a second power state,comprising: a network controller configured to receive data from anexternal device via a network: a processor unit configured to processthe received data; and a power supply controller configured to control apower supply to the processor unit so that power is supplied to theprocessor unit in the first power state but is not supplied to theprocessor unit in the second power state, wherein the network controllerand the power supply controller are connected to each other via a signalline, wherein the network controller is configured to input, in a casewhere a predetermined type of data is received by the network controllerfrom the external device in the shift of the information processingapparatus from the first power state to the second power state, a signalto the power supply controller via the signal line in accordance withthe reception, and wherein the power supply controller is configured toset predetermined data based on the input of the signal, and, after theinformation processing apparatus come to be in the second power state bythe shift, to restart the power supply to the processor unit based onthe set predetermined data, so that the processor unit processes thepredetermined type of data received in the shift.
 2. The informationprocessing apparatus according to claim 1, wherein the networkcontroller is configured with memory, and the network controller isconfigured to set the predetermined data to the memory based on theinput of the signal, to determine whether or not the predetermined datahas been set after the information processing apparatus comes to be inthe second power state by the shift, and to restart the power supply tothe processor unit based on the determination that the predetermineddata has been set.
 3. The information processing apparatus according toclaim 1, wherein the processor unit is configured to perform a shiftprocess for the shift.
 4. The information processing apparatus accordingto claim 1, wherein: the shift includes a first-stage shift, and asecond-stage shift after the first-stage shift, in a case where thepredetermined type of data is received by the network controller in thefirst-stage shift, the processor unit is configured to cancel the shiftand process the predetermined type of data in accordance with thereception, and in a case where the predetermined type of data isreceived by the network controller in the second-stage shift, thenetwork controller is configured to input the signal to the power supplycontroller via the signal line in accordance with the reception, thepower supply controller is configured to set the predetermined databased on the input of the signal, and the power supply controller isconfigured to restart the power supply to the processor unit based onthe set predetermined data after the information processing apparatuscomes to be in the second power state by the shift, and the processorunit for which the power supply is performed by the restart isconfigured to process the received predetermined type of data.
 5. Theinformation processing apparatus according to claim 4, wherein, even ifthe predetermined type of data is received by the network controller inthe first-stage shift, the network controller is configured not to inputthe signal to the power supply controller via the signal line.
 6. Theinformation processing apparatus according to claim 4, furthercomprising a printer unit to which power supply is performed in the casewhere the information processing apparatus is in the first power state,whereas the power supply is not performed in the case where theinformation processing apparatus is in the second power state, wherein,when the first-stage shift is completed, the power supply controller isconfigured to stop the power supply to the printer unit whilemaintaining the power supply to the processor unit, and wherein, whenthe second-stage shift is completed, the power supply controller isconfigured to stop the power supply to the processor unit.
 7. Theinformation processing apparatus according to claim 1, wherein thepredetermined type of data is print job data.
 8. The informationprocessing apparatus according to claim 1, wherein, even if theprocessor unit does not detect the reception of the predetermined typeof data in the shift, the network controller is configured to be able toinput the signal to the power supply controller via the signal line. 9.A method for controlling an information processing apparatus which isbeing shifted from a first power state to a second power state, whereinthe information processing apparatus has a processor unit, a networkcontroller, and a power supply controller which controls a power supplyto the processor unit and is connected to the network controller with asignal line, the method comprising: receiving, by the networkcontroller, a predetermined type of data from an external device in theshift of the information processing apparatus from the first power stateto the second power state; inputting, by the network controller, asignal to the power supply controller via the signal line in accordancewith the reception; setting, by the network controller, predetermineddata based on the input of the signal; stopping, by the power supplycontroller, power supply to the processor unit in accordance with theshift; restarting, by the power supply controller, power supply to theprocessor unit based on the set predetermined data, after theinformation processing apparatus comes to be in the second power stateby the shift; and processing, by the processor unit to which powersupply is restarted, the received predetermined type of data.